import request from '@/utils/request'

/**
 * 创建支付订单
 * @param {Object} data
 * @param {string} data.articleId - 文章ID
 * @param {string} data.paymentMethod - 支付方式：alipay/wechat
 * @param {number} data.amount - 支付金额
 */
export function createOrder(data) {
  console.log('创建订单请求参数:', data)
  // 先尝试新接口，如果404则自动降级到旧接口
  return request({
    url: '/pay/create',
    method: 'post',
    data
  }).catch(error => {
    console.log('新接口调用失败，尝试旧接口:', error)
    if (error.response && error.response.status === 404) {
      return request({
        url: '/pay/create/order',
        method: 'post',
        data
      })
    }
    throw error
  })
}

/**
 * 检查支付订单状态
 * @param {string} orderNo - 订单号
 */
export function checkOrderStatus(orderNo) {
  // 先尝试新接口，如果404则自动降级到旧接口
  return request({
    url: `/pay/query/${orderNo}`,
    method: 'get'
  }).catch(error => {
    console.log('新接口调用失败，尝试旧接口:', error)
    if (error.response && error.response.status === 404) {
      return request({
        url: `/pay/check/status/${orderNo}`,
        method: 'get'
      })
    }
    throw error
  })
}

/**
 * 获取用户支付记录
 * @param {Object} params
 * @param {number} params.page - 页码
 * @param {number} params.size - 每页数量
 */
export function getPaymentHistory(params) {
  return request({
    url: '/api/payment/history',
    method: 'get',
    params
  })
}

/**
 * 手动解锁已购买的文章
 * @param {string} articleId - 文章ID
 */
export function unlockArticle(articleId) {
  return request({
    url: `/pay/unlock-article/${articleId}`,
    method: 'post'
  })
} 